// Created by WXX on 2021/10/17 10:25
#include <iostream>
#include <vector>
#include <algorithm>

using namespace std;

/**
 * 执行用时：0 ms, 在所有 C++ 提交中击败了100.00%的用户
 * 内存消耗：5.7 MB, 在所有 C++ 提交中击败了93.39%的用户
 */
class Solution {
public:
    bool hasAlternatingBits(int n) {
        while (n) {
            int a = n & 1, b = n >> 1 & 1;
            if ((a ^ b) != 1) return false;
            n >>= 1;
        }
        return true;
    }
};

int main() {

    cout << Solution().hasAlternatingBits(5) << endl;  // true

    return 0;
}
